﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Collections.Generic;
using System.Collections;
using Distrackting.DataLayer;


namespace Distrackting.BusinessLayer
{
    public class GerirEstatisticas
    {
        public static int contarFotos()
        {
            try
            {
                return BDEstatisticas.contarFotos();
            }
            catch (Exception e)
            {
                Mensagens.AdicionarDebug(e.Message);
                throw new Exception("Erro ao calcular o número de fotos.");
            }
        }

        public static int contarUtilizadores()
        {
            try
            {
                return BDEstatisticas.contarUtilizadores();
            }
            catch (Exception e)
            {
                Mensagens.AdicionarDebug(e.Message);
                throw new Exception("Erro ao calcular o número de utilizadores.");
            }
        }

        public static int contarTestemunhos()
        {
            try
            {
                return BDEstatisticas.contarTestemunhos();
            }
            catch (Exception e)
            {
                Mensagens.AdicionarDebug(e.Message);
                throw new Exception("Erro ao calcular o número de testemunhos.");
            }
        }

        public static int contarPercursos()
        {
            try
            {
                return BDEstatisticas.contarPercursos();
            }
            catch (Exception e)
            {
                Mensagens.AdicionarDebug(e.Message);
                throw new Exception("Erro ao calcular o número de percursos.");
            }
        }

        public static Hashtable getMaisPercorridos()
        {
            try { return BDEstatisticas.getMaisPercorridos(); }
            catch (Exception )
            {
                throw new Exception("Erro ao calcular os percursos mais percorridos.");
            }
        }
        public static Hashtable getMaisDescarregados()
        {
            try { return BDEstatisticas.getMaisDescarregados(); }
            catch (Exception )
            {
                throw new Exception("Erro ao calcular o número de percursos mais descarregados.");
            }
        }
        public static Hashtable getPercursosPorUtilizador()
        {
            try { return BDEstatisticas.getPercursosPorUtilizador(); }
            catch (Exception )
            {
                throw new Exception("Erro ao calcular o número de percursos por utilizador.");
            }
        }
        public static Hashtable getTestemunhosPorUtilizador()
        {
            try { return BDEstatisticas.getTestemunhosPorUtilizador(); }
            catch (Exception )
            {
                throw new Exception("Erro ao calcular o número de testemunhos por utilizador.");
            }
        }
        public static Hashtable getFotosPorUtilizador()
        {
            try { return BDEstatisticas.getFotosPorUtilizador(); }
            catch (Exception )
            {
                throw new Exception("Erro ao calcular o número de fotos por utilizador.");
            }
        }
        public static Hashtable getComentariosPorUtilizador()
        {
            try { return BDEstatisticas.getComentariosPorUtilizador(); }
            catch (Exception )
            {
                throw new Exception("Erro ao calcular o número de comentários por utilizador.");
            }
        }

    }
}
